iT邦幫忙

2021 iThome 鐵人賽

DAY 21
0
Software Development

Blue Prism 精靈之手與神同行之防疫特助系列 第 21

Day21. Blue Prism 有事不再找老大,自己搞定 -BP 的Exception Type 與Exception Handling

  • 分享至 

  • xImage
  •  

常聽說出事了就想找老大擺平,
結果在群內的地位越來越低,
如果能試著自己處理問題,
把事情Handle好,日子久了自然地位會越來越被重視。

BP的Exception 異常事件也常常需要運用Exception Handling來處理,
讓整個系統更為穩定與應變性更強,
如果沒有Exception Handling,整個系統的處理將無法容錯與容許任何狀況發生,
有了Exception Handling後,經由BP設計的流程穩定度更為提升,
產生出來的結果也更讓人信任。

 前集提要

BP 串Objects頁流程傳遞參數
(1)說明整個Object頁串起後的整個流程與流程之間要如何傳遞參數。

 本集預告

BP 的Exception Type 與Exception Handling
(1)說明BP的異常型態與BP的異常處理。

我們接著來看看「BP 的Exception Type 與Exception Handling」吧!

  1. Blue Prism 實現異常處理
    Exception異常的發生通常在處理Process或Object流程期間發生。
    (1). Blue Prism 異常處理階段
    Exception:在Process或Object流程中顯示引發異常。
    Recovery:開始處理異常。
    Resume:結束處理異常。

  2. Blue Prism 的3種異常類型:
    https://ithelp.ithome.com.tw/upload/images/20210921/20141198w3Un2cHLMb.png

從上面的示意圖我們可以看出Blue Prism可以處理的異常有所謂的內部異常、系統異常以及業務異常。
業務異常從字面上就很清楚的看出,主要異常來源是由人經由業務規則去定義Exception拋出的時機,
也就是如果執行的資料或條件符合業務規則中斷需拋出異常時,系統就會經由設定好的業務異常拋出Business Exception。
如果遇到系統內部就可判斷錯誤的異常項目就被歸類於內部異常;其主要異常邏輯或規則已清楚定義於系統內部,因此遇到像是除以零、文字格式資料運算時,
系統不需要經過設計就會偵測到並拋出Internal Exception,至於,System Exception(系統異常)的問題多發於系統間的溝通異常所致,
例如:瀏覽器連線逾時…等問題。

以下我們來看一下Internal Exception的例子:
Internal Exception
前幾天我們設計的讀取Excel的流程,若遇到找不到Excel檔案時,系統即會拋出Exception,
此類的Exception就是Internal Exception。
https://ithelp.ithome.com.tw/upload/images/20210921/20141198rjhoqZgPdY.png

此類的異常也可從System 項次 > Object分支 > Exception Type 按下Scan Business Objects看到相關訊息
https://ithelp.ithome.com.tw/upload/images/20210921/2014119874C2i6O6Rp.png

Blue Prism 中Exception的設定例子:
https://ithelp.ithome.com.tw/upload/images/20210922/20141198fwN5QObbuQ.png

BP小教室:

異常階段

異常階段允許進程報告異常並停止執行。有關異常的概述,請參閱:異常幫助
• 輸入名稱- 您輸入的名稱標識異常,它將顯示在流程圖上。
• 輸入描述- 附加描述字段允許輸入更長的敘述。
• 輸入異常類型- 異常類型可用於概括異常的原因:
o 從下拉列表中選擇現有的異常類型。
o 通過輸入文本創建新的例外類型。
• 輸入異常詳細信息- 異常詳細信息可用於從流程中獲取任何其他值:
o 異常詳細信息可以是任何有效的 Blue Prism 表達式。請參閱計算和決策。
o 如果您只需要一些文本,請記住將文本括在引號中。
• 保留當前異常的類型和詳細信息- 此選項可與恢復階段一起使用以保留異常的詳細信息,確保即使在進程已清理之後,會話日誌中仍保留準確的錯誤帳戶。如果啟用,異常類型和異常詳細信息字段將被禁用,因為類型和詳細信息保留在原始異常中。這有助於排除異常並確定錯誤來源。
• 保存屏幕截圖- 這將在發生異常時拍攝屏幕圖像,並將其存儲在 Blue Prism 數據庫中。必須在系統設置中啟用屏幕捕獲功能才能使 復選框生效。對於任何運行時資源,只會存儲最新的屏幕截圖。只有在控制室中運行的進程才會創建屏幕截圖。在調試過程中,不會進行屏幕截圖,但會記錄一條消息以指示何時進行屏幕截圖。

(以上小知識擷取自Blue Prism online help)

至於Exception的異常處理復原就會將相關設定寫在Recovery與Resume之間,
一般來說每頁只有一個Recovery和Resume階段就足夠了。
https://ithelp.ithome.com.tw/upload/images/20210922/20141198x6HbGsPuiu.png

但是我們可以使用多個異常階段,如果您想使用多個恢復階段,我們需要使用 Block Stage。
由於此部分屬於較深入的探討,因此我們可在鐵人賽外的一些場合再為大家說明。


上一篇
Day20. Blue Prism 的烤肉串-BP 串Objects頁流程傳遞參數
下一篇
Day22. Blue Prism拯救貧窮大作戰第三彈 -BP自動執行應用程式
系列文
Blue Prism 精靈之手與神同行之防疫特助30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言